package com.list;
//存储学生对象并遍历：创建一个存储学生对象的集合，存储3个学生对象，
// 实用程序实现在控制台遍历该集合，学生的姓名和年龄来自于键盘导入

import com.domain.Student;

import java.util.ArrayList;
import java.util.Scanner;

public class StudentTest02 {
    public static void main(String[] args) {
        //创建一个存储学生对象的集合
        ArrayList<Student> list = new ArrayList<>();
        //键入3个学生信息
        Scanner sc = new Scanner(System.in);
        //录入String类型数据可以用next()，也可以用nextLine()。当字符串和整数配合使用的时候，nextLine()失效。
        //但是next()遇到空格会失去空格后面的内容，只能录入没有空格的数据。
        // 如：键盘录入"123 456"时，用nextLine()可以全部接收，用next()只能接收前半部分"123"。
        System.out.println("请输入第一个学生的名字：");
        //String name1 = sc.nextLine();
        String name1 = sc.next();
        System.out.println("请输入第一个学生的年龄：");
        int age1 = sc.nextInt();

        System.out.println("请输入第二个学生的名字：");
        //String name2 = sc.nextLine();
        String name2 = sc.next();
        System.out.println("请输入第二个学生的年龄：");
        int age2 = sc.nextInt();

        System.out.println("请输入第三个学生的名字：");
        //String name3 = sc.nextLine();
        String name3 = sc.next();
        System.out.println("请输入第三个学生的年龄：");
        int age3 = sc.nextInt();
        System.out.println("------------------------");
        //根据录入信息创建3个学生对象(Student的有参构造方法实现)
        Student stu1 = new Student(name1, age1);
        Student stu2 = new Student(name2, age2);
        Student stu3 = new Student(name3, age3);
        //将学生对象添加到list集合
        list.add(stu1);
        list.add(stu2);
        list.add(stu3);
        //fori遍历集合
        for (int i = 0; i < list.size(); i++) {
            Student stu = list.get(i);
            System.out.println(stu);
            System.out.println(stu.getName() + "  " + stu.getAge());
        }
    }
}
